package com.baizhi.mapx;

import java.util.*;

/**
 * Map体系是按照 键无序，不重复， 无下标，   值不做要求
 */
public class MapDemo01 {
    public static void main(String[] args) {
        Map<String,Integer> map = new Hashtable<>();

        /*
           V put(k,v) 往集合中存放元素
         */
        map.put("安尚华",97);
        map.put("李娜",96);
        map.put("白玉石",33);
        map.put("高富彬",66);
        //map.put("安尚华",40); //覆盖原来的数据
        map.put("杨磊",97);

        System.out.println(map);

        /*
            V remove(K k)
            移除指定元素
         */
        map.remove("李娜");
        System.out.println(map);


        /*
            V get(Object k)
            根据指定的key  获取 value
         */
        Integer score = map.get("白玉石");
        System.out.println(score);

        /*
           void clear()
           清空集合
         */
       // map.clear();
       // System.out.println(map);

        /**
         *  boolean  isEmpty()
         *  判断集合是否为空
         */
        boolean empty = map.isEmpty();
        System.out.println("集合是否为空："+empty);

        /*
            boolean containsKey(K k)
          判断集合是否包含某个key
         */
        System.out.println(map.containsKey("安尚华")); //true
        System.out.println(map.containsKey("李娜")); //false

        /*
          boolean containsValue(V v)
          判断集合是否包含某个value
         */
        System.out.println(map.containsValue(97)); //true
        System.out.println(map.containsValue(60)); //false

        System.out.println("=======================================");

        /*
            Set<K> keySet()
           获取全部key的集合
         */
        Set<String> set = map.keySet();
        System.out.println(set);

        /*
            Collection<V> values()
          获取全部的value的集合
         */
        Collection<Integer> values = map.values();
        System.out.println(values);

        /*
            int size()
            获取集合大小
         */
        System.out.println(map.size());

        /*
          void putAll(Map<? extends K, ? extends V> m);
          将指定集合合并到当前集合中
         */
        Map<String,Integer> m2 = new HashMap<>();
        m2.put("宋江",72);
        m2.put("李逵",15);
        m2.put("孔亮",18);

        map.putAll(m2);

        System.out.println(map);
    }
}
